encoding/json/jsontext.decodeBuffer.buf (field)
110 uses
encoding/json/jsontext (current package)
decode.go#L106: buf []byte // may alias rd if it is a bytes.Buffer
decode.go#L142: b := d.s.buf[:0]
decode.go#L151: d.decodeBuffer = decodeBuffer{buf: b, rd: r}
decode.go#L181: d.Names.copyQuotedBuffer(d.buf)
decode.go#L188: case len(d.buf) == 0:
decode.go#L189: d.buf = bb.Next(bb.Len()) // "read" all data in the buffer
decode.go#L205: if cap(d.buf) == 0 {
decode.go#L206: d.buf = make([]byte, 0, 64)
decode.go#L214: grow := cap(d.buf) <= maxBufferSize/growthSizeFactor
decode.go#L217: grow = grow && int64(cap(d.buf)) < d.previousOffsetEnd()/growthRateFactor
decode.go#L222: grow = grow || (d.prevStart == 0 && len(d.buf) >= 3*cap(d.buf)/4)
decode.go#L227: buf := make([]byte, 0, cap(d.buf)*growthSizeFactor)
decode.go#L228: d.buf = append(buf, d.buf[d.prevStart:]...)
decode.go#L231: n := copy(d.buf[:cap(d.buf)], d.buf[d.prevStart:])
decode.go#L232: d.buf = d.buf[:n]
decode.go#L240: n, err := d.rd.Read(d.buf[len(d.buf):cap(d.buf)])
decode.go#L243: d.buf = d.buf[:len(d.buf)+n]
decode.go#L268: if d.rd != nil && !isBytesBuffer(d.rd) && d.prevStart < d.prevEnd && uint(d.prevStart) < uint(len(d.buf)) {
decode.go#L269: d.buf[d.prevStart] = invalidateBufferByte
decode.go#L277: return pos == len(d.buf)
decode.go#L283: func (d *decodeBuffer) previousBuffer() []byte { return d.buf[d.prevStart:d.prevEnd] }
decode.go#L284: func (d *decodeBuffer) unreadBuffer() []byte { return d.buf[d.prevEnd:len(d.buf)] }
decode.go#L299: b = d.buf[:d.prevEnd] // entirety of the previous buffer
decode.go#L320: return Kind(d.buf[d.peekPos]).normalize()
decode.go#L328: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L341: if c := d.buf[pos]; c == ':' || c == ',' {
decode.go#L344: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L353: next := Kind(d.buf[pos]).normalize()
decode.go#L406: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L407: err := jsonwire.NewInvalidCharacterError(d.buf[pos:], where)
decode.go#L484: next = Kind(d.buf[pos]).normalize()
decode.go#L491: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L503: if c := d.buf[pos]; c == ':' || c == ',' {
decode.go#L506: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L514: next = Kind(d.buf[pos]).normalize()
decode.go#L524: if jsonwire.ConsumeNull(d.buf[pos:]) == 0 {
decode.go#L539: if jsonwire.ConsumeFalse(d.buf[pos:]) == 0 {
decode.go#L554: if jsonwire.ConsumeTrue(d.buf[pos:]) == 0 {
decode.go#L570: if n = jsonwire.ConsumeSimpleString(d.buf[pos:]); n == 0 {
decode.go#L586: if d.Tokens.Last.isActiveNamespace() && !d.Namespaces.Last().insertQuoted(d.buf[pos-n:pos], flags.IsVerbatim()) {
decode.go#L587: err = wrapWithObjectName(ErrDuplicateName, d.buf[pos-n:pos])
decode.go#L602: if n = jsonwire.ConsumeSimpleNumber(d.buf[pos:]); n == 0 || d.needMore(pos+n) {
decode.go#L662: err = jsonwire.NewInvalidCharacterError(d.buf[pos:], "at start of value")
decode.go#L693: next = Kind(d.buf[pos]).normalize()
decode.go#L700: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L712: if c := d.buf[pos]; c == ':' || c == ',' {
decode.go#L715: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L723: next = Kind(d.buf[pos]).normalize()
decode.go#L747: if d.Tokens.Last.isActiveNamespace() && !d.Namespaces.Last().insertQuoted(d.buf[pos-n:pos], flags.IsVerbatim()) {
decode.go#L748: err = wrapWithObjectName(ErrDuplicateName, d.buf[pos-n:pos])
decode.go#L777: return d.buf[pos-n : pos : pos], nil
decode.go#L813: err := jsonwire.NewInvalidCharacterError(d.buf[pos:], "after top-level value")
decode.go#L841: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L861: switch next := Kind(d.buf[pos]).normalize(); next {
decode.go#L863: if n = jsonwire.ConsumeNull(d.buf[pos:]); n == 0 {
decode.go#L864: n, err = jsonwire.ConsumeLiteral(d.buf[pos:], "null")
decode.go#L867: if n = jsonwire.ConsumeFalse(d.buf[pos:]); n == 0 {
decode.go#L868: n, err = jsonwire.ConsumeLiteral(d.buf[pos:], "false")
decode.go#L871: if n = jsonwire.ConsumeTrue(d.buf[pos:]); n == 0 {
decode.go#L872: n, err = jsonwire.ConsumeLiteral(d.buf[pos:], "true")
decode.go#L875: if n = jsonwire.ConsumeSimpleString(d.buf[pos:]); n == 0 {
decode.go#L881: if n = jsonwire.ConsumeSimpleNumber(d.buf[pos:]); n == 0 || d.needMore(pos+n) {
decode.go#L892: return pos, jsonwire.NewInvalidCharacterError(d.buf[pos:], "at start of value")
decode.go#L911: n, err := jsonwire.ConsumeLiteral(d.buf[pos:], lit)
decode.go#L930: n, err = jsonwire.ConsumeStringResumable(flags, d.buf[pos:], n, !d.Flags.Get(jsonflags.AllowInvalidUTF8))
decode.go#L950: n, state, err = jsonwire.ConsumeNumberResumable(d.buf[pos:], n, state)
decode.go#L982: if uint(pos) >= uint(len(d.buf)) || d.buf[pos] != '{' {
decode.go#L990: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L996: if d.buf[pos] == '}' {
decode.go#L1004: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L1011: if n = jsonwire.ConsumeSimpleString(d.buf[pos:]); n == 0 {
decode.go#L1023: quotedName := d.buf[pos-n : pos]
decode.go#L1029: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L1035: if d.buf[pos] != ':' {
decode.go#L1036: err := jsonwire.NewInvalidCharacterError(d.buf[pos:], "after object name (expecting ':')")
decode.go#L1042: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L1054: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L1060: switch d.buf[pos] {
decode.go#L1068: return pos, jsonwire.NewInvalidCharacterError(d.buf[pos:], "after object value (expecting ',' or '}')")
decode.go#L1077: if uint(pos) >= uint(len(d.buf)) || d.buf[pos] != '[' {
decode.go#L1085: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L1091: if d.buf[pos] == ']' {
decode.go#L1100: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L1112: pos += jsonwire.ConsumeWhitespace(d.buf[pos:])
decode.go#L1118: switch d.buf[pos] {
decode.go#L1127: return pos, jsonwire.NewInvalidCharacterError(d.buf[pos:], "after array element (expecting ',' or ']')")
decode.go#L1218: d.Names.copyQuotedBuffer(d.buf)
errors.go#L100: err = jsonwire.NewInvalidCharacterError(d.buf[pos:], where)
pools.go#L138: d.s.buf = nil // avoid pinning the provided buffer
pools.go#L149: d.s.reset(d.s.buf[:0], r, opts...) // preserve existing buffer
pools.go#L155: d.s.rd, d.s.buf = nil, nil // avoid pinning the provided bytes.Buffer
pools.go#L159: if cap(d.s.buf) > 64<<10 {
pools.go#L160: d.s.buf = nil // avoid pinning arbitrarily large amounts of memory
token.go#L129: return Token{raw: &decodeBuffer{buf: []byte(s), prevStart: 0, prevEnd: len(s)}}
token.go#L237: return Token{raw: &decodeBuffer{buf: buf, prevStart: 0, prevEnd: len(buf)}}
token.go#L610: return Kind(t.raw.buf[raw.prevStart]).normalize()
value.go#L345: currMember := objectMember{name, d.s.buf[beforeName:afterValue]}
value.go#L394: copy(d.s.buf[beforeBody:afterBody], sorted)